Towards Porting Operating Systems with Program Synthesis

نویسندگان

چکیده

The end of Moore’s Law has ushered in a diversity hardware not seen decades. Operating system (OS) (and software) portability is accordingly becoming increasingly critical. Simultaneously, there been tremendous progress program synthesis. We set out to explore the feasibility using modern synthesis generate machine-dependent parts an operating system. Our ultimate goal new ports automatically from descriptions machines. One issues involved writing specifications, both for functionality and instruction architectures. designed two domain-specific languages: Alewife machine-independent specifications Cassiopea describing architecture semantics. Automated porting also requires implementation. developed toolchain that, given specification machine description, specializes target synthesizes implementation assembly language with customized symbolic execution engine. Using this approach, we demonstrate successful total 140 OS components pre-existing OSes four real platforms. several optimization methods OS-related improve scalability. effectiveness our languages ability synthesize code all evidence code. However, many research challenges remain; discuss benefits limitations synthesis-based approach automated porting.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

EPICS: A RETROSPECTIVE ON PORTING iocCore TO MULTIPLE OPERATING SYSTEMS

An important component of EPICS (Experimental Physics and Industrial Control System) is iocCore, which is the core software in the IOC (input/output controller) front-end processors. At ICALEPCS 1999 a paper was presented describing plans to port iocCore to multiple operating systems. At that time iocCore only supported vxWorks, but now it also supports RTEMS, Solaris, Linux, and WinNT. This pa...

متن کامل

UNIX Operating System Porting Experiences

One of the reasons for the dramatic growth in popularity of the UNIX" operating system is the portability of both the operating system and its associated user-level programs. This paper highlights the portability of the UNIX operating system, presents some general porting considerations, and shows how some of the ideas were used in actual UNIX operating system porting efforts. Discussions of th...

متن کامل

Towards Elastic Operating Systems

Realizing elasticity in cloud applications today is often a cumbersome process, requiring applications to integrate with services like elastic load balancers and/or be rewritten to accommodate distributed frameworks like map/reduce or cluster-based operating systems. In this paper, we introduce the concept of ElasticOS, which enables a process (or even a single thread) to stretch its associated...

متن کامل

A Step towards Operating System Synthesis ?

Experiences gained from the design of micro-kernel related to either high-performance or hard real-time computing have shown that customization plays a major role to enhance the performance of applications while maintaining a reusable and exible software architecture. Our goal is to cover both elds by developing a customizable library operating system (Dreams 1) intended to be used as a basis f...

متن کامل

Improving Dependability of Commodity Operating Systems with Program Analysis

Improving Dependability of Commodity Operating Systems with Program Analysis by Feng Zhou Doctor of Philosophy in Computer Science University of California, Berkeley Professor Eric A. Brewer, Chair Modern operating systems are notoriously complex and hard to make dependable. Due to performance, flexibility and historical reasons, most of them are written in relatively low level languages like C...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

ژورنال

عنوان ژورنال: ACM Transactions on Programming Languages and Systems

سال: 2023

ISSN: ['1558-4593', '0164-0925']

DOI: https://doi.org/10.1145/3563943